package com.leiqichao.backend.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.time.LocalDateTime;

/**
 * 分类实体类
 */
@Data
@TableName("categories") // 对应数据库中的 categories 表
public class Category {

    @TableId(type = IdType.AUTO) // 主键自增
    private Long id;

    @TableField("name") // 分类名称
    private String name;

    @TableField("slug") // URL 别名（唯一）
    private String slug;

    @TableField("description") // 分类描述
    private String description;

    @TableField("parent_id") // 父分类ID
    private Long parentId;

    @TableField("`order`") // 排序字段
    private Integer order;

    @TableLogic // 逻辑删除字段
    @TableField("is_deleted")
    private Boolean isDeleted = false;

    @TableField(value = "created_at", fill = FieldFill.INSERT) // 创建时间，自动填充
    private LocalDateTime createdAt;

    @TableField(value = "updated_at", fill = FieldFill.INSERT_UPDATE) // 更新时间，自动填充
    private LocalDateTime updatedAt;
}